Lesson Plan for Senior Secondary 2 - Information Communication Technology - Program Development Ii

### Lesson Plan: Program Development II **Class:** Senior Secondary 2 **Subject:** Information Communication Technology **Duration:** 80 minutes **Topic:** Program Development II #### Learning Objectives: - Understand the advanced principles of program development. - Write and debug simple programs. - Understand and utilize basic programming constructs such as loops, conditionals, and functions. - Develop problem-solving skills through programming. #### Materials Needed: - Computers with installed programming environments (such as Python, Java, or C++) - Projector and computer (for teacher demonstrations) - Handouts with exercises and examples - Whiteboard and markers #### Lesson Outline: **Introduction (10 minutes):** 1. **Greeting and Attendance (2 minutes):** - Take attendance and greet students. 2. **Recap of Previous Lesson (8 minutes):** - Briefly revisit the concepts from Program Development I. - Highlight key points such as basic syntax, variables, and simple input/output. - Encourage students to ask questions or share what they remember. **Lesson Body (60 minutes):** *Step 1: Introduction to Advanced Concepts (20 minutes)* - **Control Structures:** - Introduce control structures such as loops (for, while) and conditionals (if, else if, else). - Explain the syntax and purpose of each control structure. - Provide simple example code snippets and walk through them. - **Functions:** - Explain the importance of functions in programming. - Describe how to define and call functions. - Discuss parameters and return values with examples. *Step 2: Live Coding Demonstration (20 minutes)* - **Writing a Program:** - Demonstrate the process of writing a small program that includes loops, conditionals, and functions. - Explain each step clearly and narrate your thought process. - Example: Write a program that takes a number as input and determines whether it is prime. - **Debugging:** - Introduce basic debugging techniques such as reading error messages and using print statements. - Show how to identify and correct common errors. *Step 3: Hands-On Practice (20 minutes)* - **Pair Programming Exercise:** - Divide students into pairs and provide them with a set of problems to solve. - Problems should require the use of loops, conditionals, and functions. - Example problems: 1. Write a program to calculate the factorial of a number. 2. Write a program to find the largest number in a list. - **Teacher Assistance:** - Move around the classroom to assist pairs with any issues they encounter. **Conclusion (10 minutes):** *Step 4: Review and Q&A (10 minutes)* - **Summary:** - Recap what was covered in the lesson, emphasizing key points. - Discuss the importance of practice in developing programming skills. - **Q&A:** - Open the floor for any questions. - Clarify any concepts that students are uncertain about. - **Assignment:** - Assign homework for further practice. - Example: Write a program to accept a list of numbers and sort them in ascending order. **Homework/Assignment:** - **Programming Task:** - Write a program to calculate and print the Fibonacci series up to a specified number. - Submit the completed code by the next class. **Assessment:** - Evaluate students based on their participation during the lesson and accuracy of the homework assignment. --- **Note for Teacher:** - Make sure to adjust the pace of the lesson according to student understanding. - Encourage students to think critically and troubleshoot their own code. - Provide positive feedback to encourage a growth mindset among students.